草庐IT

JavaScript key 处理和浏览器兼容性

全部标签

javascript - 如何清除Google Chrome浏览器地址栏?

在标签中加载扩展程序页面时,我需要清除GoogleChrome浏览器地址栏。THIS是我的扩展名,需要清除的地址如下所示:chrome-extension:///page.html 最佳答案 *底部真正解决您的问题。清除浏览器地址栏这是一个几乎所有曾经使用JavaScript的人都想到的老问题:我可以通过JavaScript替换地址栏中显示的整个URL吗?好吧,很抱歉,答案是一个巨大的NOPE!为什么无法清除/替换地址栏中的URL?首先,JavaScript实际上没有提供任何功能,最著名的浏览器(Chrome,Mozilla,Ope

javascript - JavaScript 的编译器是否因网络浏览器而异

所以我问是否每个网络浏览器都有自己的编译器示例IE从网站编译Javascript并生成字节码序列A。另一方面,googlechrome从同一网站编译相同的Javascript并生成序列B。我想知道这一点,因为如果是这种情况,那么在Javascript上运行编译器并将生成的字节代码上传到网站而不是Javascript本身是否有益。并根据每个浏览器发送不同的字节码。或者还有其他一些限制。 最佳答案 正如其他人所指出的,有不同的ECMAScriptengines其中一些使用JIT(即时)编译器,而另一些使用运行时解释器,前者是当今大多数浏

javascript - 删除特定对象上的 jQuery 委托(delegate)事件处理程序

我已使用单个选择器将委托(delegate)事件处理程序附加到页面上的多个元素。由于事件是为单个元素触发的,所以我想仅根据某些条件逻辑关闭该元素的事件处理程序。这意味着我不一定要在第一次点击时禁用该事件。但如果不关闭所有这些,我不知道该怎么做。HTML:OneTwoThreeJS:$(document).on('click','button',function(ev){//doesn'tworkbecauseargumentneedstobeastring$(document).off('click',$(ev.target));//doesn'tdowhatIwantb/cturns

javascript - 在 JavaScript 和 jQuery 中使用委托(delegate)事件处理程序是否存在性能缺陷?

我在我的JavaScript代码中使用委托(delegate)事件处理程序(jQuery),因此当单击动态添加的按钮时会发生一些事情。我想知道这是否存在性能缺陷?//Delegatedeventhandler$(document).on('click','#dynamicallyAddedButton',function(){console.log("Hello");});在性能方面,它与此相比如何?//Regulareventhandler$("#regularButton").on('click',function(){console.log("HelloAgain");});查看

javascript - PhantomJS 捕获移动浏览器的屏幕截图

我试图用PhantomJS创建一个网络截图,但我得到的图像是移动浏览器。我正在使用MACOS优胜美地。这是我的JavaScript:屏幕.jsvarWebPage=require('webpage');page=WebPage.create();page.open('http://www.apple.com');page.onLoadFinished=function(){window.setTimeout(function(){page.render('appleScreenShot'+'.png');phantom.exit();},2000);}这是我的命令行代码phantomj

javascript - 浏览器选项卡和窗口之间的区别

在网络浏览器中,每个窗口都有自己的JavaScript环境,有自己的全局对象。但看起来在同一窗口中打开一个新选项卡也会创建一个不同的全局对象。这是真的吗?新选项卡和新窗口之间的主要区别是什么? 最佳答案 唯一的区别是窗口如何呈现给用户。每个选项卡/窗口都有一个完全独立的DOM(文档对象模型)和JavaScript环境。大多数浏览器会共享Cookie,因此会在选项卡和新窗口之间共享session。有些具有“隐身”模式,可防止在隐身模式和正常模式窗口之间共享session。 关于javasc

javascript - Ember -- JSON API 适配器错误处理

我想在API请求导致404错误时采取特定操作。我读过,执行此操作的适当方法是处理应用程序适配器中的错误,如下所示:handleResponse:function(status,headers,payload){if(status===404&&payload.errors){//handleerror}returnthis._super(...arguments);}问题是,一旦我设置了适配器,它就不会完成加载页面,所以我可以处理页面本身的错误。相反,它会自动将我带到一些只显示“适配器错误”的错误路径。我怎样才能停止/覆盖这种行为? 最佳答案

javascript - 每个事件具有多个事件处理程序的 SignalR

在C#中,我会像这样将许多处理程序挂接到一个事件:event+=firstEventHandler;event+=secondEventHandler;但我们编写的带有SignalR的JavaScript:$.connection.someHubName.client.someEventName=function(item){console.log("someMessage",item);};我创建了一个看起来有点像这样的包装器:varsignalRClient={start:function(callback){$.connection.hub.url=ajaxHttp+"/sign

javascript - 为特定页面设置浏览器打印机

我正在编写一个基于网络的软件。我打印条形码。PC端有2台打印机,所以用户总是要选择条码打印机打印条码,激光打印机打印报告。有什么方法可以为页面设置打印机。(从浏览器设置或通过javascript)例如:www.example.com/barcodeprint.php---->Barcodeprinterwww.example.com/reportprint.php---->Laserprinter谢谢 最佳答案 JavaScript不允许您覆盖客户端浏览器的默认页面设置,因为浏览器通过将脚本沙箱化来保护硬件和操作系统,以避免任何恶意

javascript - Leaflet JS - 实现手势处理以强制执行 2 指滚动

您知道当您在移动设备上向下滚动带有谷歌地图的网页时。map变暗并告诉您“用两根手指移动map”。我想在我的Leafletmap中实现这一点。Leaflet目前不提供这种开箱即用的功能。Google将此功能称为手势处理。如果将其设置为“合作”,您将获得我刚才描述的效果。https://developers.google.com/maps/documentation/javascript/interaction如我的代码示例所示,检测所用手指的数量并显示消息非常容易。(您需要在移动设备或模拟器上运行它才能看到它的效果)如果是1根手指,我取消touchmove事件并显示我的警告。否则我允许事